「重新認識 CSS」這個系列名稱的由來就如其名,我想要重新認識它。雖然以前就有學過 CSS,但這次想從 CSS Spec 中學到最原始的定義和內容,更加了解 CSS 的原理,讓我在切版的時候可以更加確定自己在做什麼,我踩到的雷只是因為我不夠了解它才會炸開。
在這 30 天的內容中,會將 Spec 內看到的資料整理成這個系列,也希望正在學 CSS 的各位可以更加了解它。另外我也會同時將文章發至我的 Blog,如果想直接看文內的程式碼 Demo 畫面,可以到我的 Blog 來看 ?。
「重新認識 CSS」系列文章發文於:
在 CSS 2.2 中,可根據三種定位方案對 box 進行佈局:
如果一個元素是 float 的、絕對定位的或者是 root 元素,則該元素被稱為 out of flow。如果元素不是 out of flow,則稱為 in-flow。
position 屬性下面是 position 屬性的定義表:

圖片來源:CSS 2.2 - 9.3.1. Choosing a positioning scheme: position property
statictop、right、bottom 和 left 屬性不適用relativeposition:relative 對 table-row-group、table-header-group、table-footer-group、table-row、table-column-group、table-column、table-cell、table-caption 元素的影響未定義absolutetop、right、bottom 和 left 屬性指定fixedabsolute model 計算得出的,但除此之外,該 box 相對於某些參考是 fixed (固定的)absolute model 一樣,box 的 margin 不會與其他任何 margin 一起 collapsescreen 時,該 box 相對於 viewport 是 fixed,捲動時不會移動資料來源: